package com.wgh.pay.entity;

import com.wgh.common.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 支付日志实体类
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("pay_log")
public class PayLog extends BaseEntity {
    
    /**
     * 订单ID
     */
    private Long orderId;
    
    /**
     * 支付流水号
     */
    private String transactionId;
    
    /**
     * 支付金额
     */
    private BigDecimal totalAmount;
    
    /**
     * 支付方式：1-微信支付，2-支付宝，3-银联支付
     */
    private Integer payType;
    
    /**
     * 支付状态：0-未支付，1-支付成功，2-支付失败，3-支付中
     */
    private Integer payStatus;
    
    /**
     * 支付时间
     */
    private Date payTime;
    
    /**
     * 支付渠道交易号
     */
    private String channelTradeNo;
    
    /**
     * 支付描述
     */
    private String payDesc;
    
    /**
     * 支付客户端IP
     */
    private String clientIp;
    
    /**
     * 支付通知地址
     */
    private String notifyUrl;
    
    /**
     * 支付回调状态：0-未回调，1-回调成功，2-回调失败
     */
    private Integer notifyStatus;
    
    /**
     * 回调时间
     */
    private Date notifyTime;
    
    /**
     * 支付失败原因
     */
    private String failReason;
    
    /**
     * 交易数据，存储支付相关的JSON字符串
     */
    private String tradeData;
}